%%%-------------------------------------------------------------------
%%% @author Evgeniy Khramtsov <ekhramtsov@process-one.net>
%%% @copyright (C) 2013-2016, Evgeniy Khramtsov
%%% @doc
%%%
%%% @end
%%% Created :  1 May 2013 by Evgeniy Khramtsov <ekhramtsov@process-one.net>
%%%-------------------------------------------------------------------

{deps, [{lager, ".*", {git, "https://github.com/basho/lager", {tag, "3.2.1"}}},
        {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.5"}}},
        {cache_tab, ".*", {git, "https://github.com/processone/cache_tab", {tag, "1.0.4"}}},
        {fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.7"}}},
        {stringprep, ".*", {git, "https://github.com/processone/stringprep", {tag, "1.0.6"}}},
        {fast_xml, ".*", {git, "https://github.com/processone/fast_xml", {tag, "1.1.15"}}},
        {stun, ".*", {git, "https://github.com/processone/stun", {tag, "1.0.7"}}},
        {esip, ".*", {git, "https://github.com/processone/esip", {tag, "1.0.8"}}},
        {fast_yaml, ".*", {git, "https://github.com/processone/fast_yaml", {tag, "1.0.6"}}},
        {jiffy, ".*", {git, "https://github.com/davisp/jiffy", {tag, "0.14.7"}}},
        {p1_oauth2, ".*", {git, "https://github.com/processone/p1_oauth2", {tag, "0.6.1"}}},
        {eredis,".*",{git,"https://github.com/wooga/eredis.git",{tag, "v1.2.0"}}},
        {cowboy, "1.0.1", {git, "https://github.com/ninenines/cowboy.git", "1.0.1"}},
        {recon, ".*", {git, "https://github.com/ferd/recon.git", {branch, "master"}}},
        {rfc4627_jsonrpc, ".*", {git, "https://github.com/tonyg/erlang-rfc4627"}},
	{brod, ".*", {git, "https://github.com/klarna/brod.git", {tag, "3.1.0"}}},
        {uuid, ".*", {git, "https://github.com/avtobiff/erlang-uuid.git", "master"}},
        {protobuffs,".*",{git,"https://github.com/processone/erlang_protobuffs.git"}},
        {luerl, ".*", {git, "https://github.com/rvirding/luerl", {tag, "v0.2"}}},
        {poolboy, ".*", {git, "https://github.com/devinus/poolboy.git", {tag, "1.5.2"}}},
        {if_var_true, pgsql, {p1_pgsql, ".*", {git, "https://github.com/processone/p1_pgsql",
                                               {tag, "1.1.0"}}}},
        {if_var_true, zlib, {ezlib, ".*", {git, "https://github.com/processone/ezlib",
                                           {tag, "1.0.1"}}}},
        {if_var_true, iconv, {iconv, ".*", {git, "https://github.com/processone/iconv",
                                            {tag, "1.0.2"}}}},
        {if_var_true, tools, {meck, "0.8.*", {git, "https://github.com/eproxus/meck",
                                              {tag, "0.8.4"}}}},
        {if_var_true, tools, {moka, ".*", {git, "https://github.com/processone/moka.git",
                                           {tag, "1.0.5c"}}}}
       ]}.

{if_var_true, latest_deps,
 {floating_deps, [cache_tab,
                  fast_tls,
                  stringprep,
                  fast_xml,
                  esip,
                  luerl,
                  stun,
                  fast_yaml,
                  p1_utils,
                  p1_pgsql,
                  ezlib,
                  iconv]}}.

{erl_first_files, ["src/ejabberd_config.erl", "src/gen_mod.erl"]}.

{erl_opts, [nowarn_deprecated_function,
            {if_var_false, debug, no_debug_info},
            {if_var_true, debug, debug_info},
            {if_var_true, roster_gateway_workaround, {d, 'ROSTER_GATWAY_WORKAROUND'}},
            {if_var_true, erlang_deprecated_types, {d, 'ERL_DEPRECATED_TYPES'}},
            {if_var_true, hipe, native},
            {src_dirs, [asn1, src,
                        {if_var_true, tools, tools}]}]}.

{deps_erl_opts, [{if_var_true, hipe, native}]}.

{plugins, [deps_erl_opts]}.

{sub_dirs, ["rel"]}.

{keep_build_info, true}.

{xref_warnings, false}.

{xref_checks, [deprecated_function_calls]}.

{xref_exclusions, [
                   "(\"gen_transport\":_/_)",
                   "(\"eprof\":_/_)",
                   {if_var_false, pgsql, "(\".*pgsql.*\":_/_)"},
                   {if_var_false, zlib, "(\"ezlib\":_/_)"},
                   {if_var_false, http, "(\"lhttpc\":_/_)"},
                   {if_var_false, iconv, "(\"iconv\":_/_)"}
                  ]}.

{eunit_compile_opts, [{i, "tools"}]}.

{if_version_above, "17", {cover_enabled, true}}.
{cover_export_enabled, true}.

{post_hook_configure, [{"fast_tls", []},
                       {"stringprep", []},
                       {"fast_yaml", []},
                       {"esip", []},
                       {"fast_xml", [{if_var_true, full_xml, "--enable-full-xml"}]},
                       {if_var_true, zlib, {"ezlib", []}},
                       {if_var_true, iconv, {"iconv", []}}]}.

{port_env, [{"CFLAGS", "-g -O2 -Wall"}]}.

{port_specs, [{"priv/lib/jid.so", ["c_src/jid.c"]}]}.

%% Local Variables:
%% mode: erlang
%% End:
%% vim: set filetype=erlang tabstop=8:
